home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-01-29 | 11.3 KB | 487 lines | [TEXT/MPS ] |
- ;
- ; File: Editions.a
- ;
- ; Contains: Assembly Interface for Edition Manager
- ;
- ; Copyright: © 1990-1991 by Apple Computer, Inc., all rights reserved.
- ;
- ;--------------------------------------------------------------------
-
-
-
- IF &TYPE('__IncludingEditions__') = 'UNDEFINED' THEN
- __IncludingEditions__ SET 1
-
- IF &TYPE('__IncludingTraps__') = 'UNDEFINED' THEN ; get defintion of _PACK11
- INCLUDE 'Traps.a'
- ENDIF
-
- IF &TYPE('__IncludingFSEqu__') = 'UNDEFINED' THEN ; get definition of FSSpec
- INCLUDE 'FSEqu.a'
- ENDIF
-
-
- ; resource types
- rSectionType EQU 'sect'
-
- ; section types
- stSubscriber EQU $01
- stPublisher EQU $0A
-
- ; Update Modes
- sumAutomatic EQU 0 ; subscriber update mode - Automatically
- sumManual EQU 1 ; subscriber update mode - Manually
- pumOnSave EQU 0 ; publisher update mode - On Save
- pumManual EQU 1 ; publisher update mode - Manually
-
- ; EditionContainer subpart usage
- kPartsNotUsed EQU 0
- kPartNumberUnknown EQU -1
-
- ; preview size
- kPreviewWidth EQU 120
- kPreviewHeight EQU 120
-
- ; special formats
- kPublisherDocAliasFormat EQU 'alis' ; same as rAliasType
- kPreviewFormat EQU 'prvw'
- kFormatListFormat EQU 'fmts'
-
- ; bits for formatsMask
- kPICTformatMask EQU 1
- kTEXTformatMask EQU 2
- ksndFormatMask EQU 4
-
- ; Finder types for edition files
- kPICTEditionFileType EQU 'edtp'
- kTEXTEditionFileType EQU 'edtt'
- ksndEditionFileType EQU 'edts'
- kUnknownEditionFileType EQU 'edtu'
-
- ; pseudo-item hits for dialogHooks
- ; the first is for NewPublisher or NewSubscriber Dialogs
- emHookRedrawPreview EQU 150
- ; the following are for SectionOptions Dialog
- emHookCancelSection EQU 160
- emHookGoToPublisher EQU 161
- emHookGetEditionNow EQU 162
- emHookSendEditionNow EQU 162
- emHookManualUpdateMode EQU 163
- emHookAutoUpdateMode EQU 164
-
-
- ; the refcon field of the dialog record in a modalfilter or
- ; dialoghook during SectionOptionsDialog contains one the following
- emOptionsDialogRefCon EQU 'optn'
- emCancelSectionDialogRefCon EQU 'cncl'
- emGoToPubErrDialogRefCon EQU 'gerr'
-
-
- ; misc
- kFormatLengthUnknown EQU -1
-
-
- ; record definitions
- ;
- SectionRecord RECORD 0
- version DS.B 1 ; SignedByte { always 1 in 7.0 release }
- kind DS.B 1 ; SectionType { publisher or subscriber }
- mode DS.W 1 ; UpdateMode { auto or manual }
- mdDate DS.L 1 ; TimeStamp { version of data in section }
- sectionID DS.L 1 ; LONGINT { application specific, unique per document }
- refCon DS.L 1 ; LONGINT { application specific }
- alias DS.L 1 ; AliasHandle { handle to Alias Record }
- ; the following fields are private and set up by RegisterSection
- subPart DS.L 1 ; LONGINT { which part of container, always kPartsNotUsed in 7.0 }
- nextSection DS.L 1 ; SectionHandle { for linked list of app's Sections }
- controlBlock DS.L 1 ; Handle { shared controlblock for this section. }
- refNum DS.L 1 ; EditionRefNum { NIL outside of Open/CloseEdition }
- size EQU *
- ENDR
-
-
- EditionContainerSpec RECORD 0
- theFile DS FSSpec ;
- theFileScript DS.W 1 ; ScriptCode
- thePart DS.L 1 ; LONGINT
- thePartName DS.B 32 ; Str31
- thePartScript DS.W 1 ; ScriptCode
- size EQU *
- ENDR
-
-
- EditionInfoRecord RECORD 0
- crDate DS.L 1 ; Timestamp { date EditionContainer was created }
- mdDate DS.L 1 ; Timestamp { date of last change }
- fdCreator DS.B 4 ; OSType { file creator }
- fdType DS.B 4 ; OSType { file type, 'edtT', etc }
- container DS EditionContainerSpec ; { the Edition }
- size EQU *
- ENDR
-
- NewPublisherReply RECORD 0
- canceled DS.B 1 ; BOOLEAN { O }
- replacing DS.B 1 ; BOOLEAN { O }
- usePart DS.B 1 ; BOOLEAN { I }
- pad1 DS.B 1 ;
- preview DS.L 1 ; Handle { I }
- previewFormat DS.B 4 ; FormatType { I }
- container DS EditionContainerSpec ; { I/O }
- size EQU *
- ENDR
-
- NewSubscriberReply RECORD 0
- canceled DS.B 1 ; BOOLEAN { O }
- formatsMask DS.B 1 ; SignedByte { I }
- container DS EditionContainerSpec ; { I/O }
- size EQU *
- ENDR
-
- SectionOptionsReply RECORD 0
- canceled DS.B 1 ; BOOLEAN { O }
- changed DS.B 1 ; BOOLEAN { O }
- sectionH DS.L 1 ; SectionHandle { I }
- action DS.B 4 ; ResType { 0 }
- size EQU *
- ENDR
-
-
- ; FormatIOVerb's
- ioHasFormat EQU 0
- ioReadFormat EQU 1
- ioNewFormat EQU 2
- ioWriteFormat EQU 3
-
- FormatIOParamBlock RECORD 0
- ioRefNum DS.L 1 ; LONGINT
- format DS.B 4 ; FormatType
- formatIndex DS.L 1 ; LONGINT
- offset DS.L 1 ; LONGINT
- buffPtr DS.L 1 ; Ptr
- buffLen DS.L 1 ; LONGINT
- size EQU *
- ENDR
-
-
- ; EditionOpenerVerb's
- eoOpen EQU 0
- eoClose EQU 1
- eoOpenNew EQU 2
- eoCloseNew EQU 3
- eoCanSubscribe EQU 4
-
- EditionOpenerParamBlock RECORD 0
- info DS EditionInfoRecord ;
- sectionH DS.L 1 ; SectionHandle
- document DS.L 1 ; FSSpecPtr
- fdCreator DS.B 4 ; OSType
- ioRefNum DS.L 1 ; LONGINT
- ioProc DS.L 1 ; FormatIOProcPtr
- success DS.B 1 ; BOOLEAN
- formatsMask DS.B 1 ; SignedByte
- size EQU *
- ENDR
-
-
- ; Section Events
- sectionEventMsgClass EQU 'sect'
- sectionReadMsgID EQU 'read'
- sectionWriteMsgID EQU 'writ'
- sectionScrollMsgID EQU 'scrl'
- sectionCancelMsgID EQU 'cncl'
-
- ;
- ; Section events now arrive in the message buffer using the AppleEvent format.
- ; The direct object parameter is an aeTemporaryIDParamType ('tid '). The temporary
- ; ID's type is rSectionType ('sect') and the 32-bit value is a SectionHandle.
- ; The following is a sample buffer
- ;
- ; name offset contents
- ; ---- ------ --------
- ;
- ; header 0 'aevt'
- ; majorVersion 4 $01
- ; minorVersion 6 $01
- ; endOfMetaData 8 ';;;;'
- ; directObjKey 12 '----'
- ; paramType 16 'tid '
- ; paramLength 20 $0008
- ; tempIDType 24 'sect'
- ; tempID 28 the SectionHandle <-- this is want you want
- ;
-
-
- ; FUNCTION InitEditionPack: OSErr;
- MACRO
- _InitEditionPack
- MOVE.W #$0011,-(SP)
- MOVE.W #$0100,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION NewSection(container: EditionContainerSpec;
- ; sectionDocument: FSSpecPtr;
- ; kind: SectionType;
- ; sectionID: LONGINT;
- ; initalMode: UpdateMode;
- ; VAR sectionH: SectionHandle): OSErr;
- MACRO
- _NewSection
- MOVE.W #$0A02,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION RegisterSection(sectionDocument: FSSpec; sectionH: SectionHandle;
- ; VAR aliasWasUpdated: BOOLEAN): OSErr;
- MACRO
- _RegisterSection
- MOVE.W #$0604,D0
- _Pack11
- ENDM
-
-
-
- ; FUNCTION UnRegisterSection(sectionH: SectionHandle): OSErr;
- MACRO
- _UnRegisterSection
- MOVE.W #$0206,D0
- _Pack11
- ENDM
-
-
-
- ; FUNCTION IsRegisteredSection(sectionH: SectionHandle): OSErr;
- MACRO
- _IsRegisteredSection
- MOVE.W #$0208,D0
- _Pack11
- ENDM
-
-
-
- ; FUNCTION AssociateSection(sectionH: SectionHandle; newSectionDocument: FSSpecPtr): OSErr;
- MACRO
- _AssociateSection
- MOVE.W #$040C,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION CreateEditionContainerFile(editionFile: FSSpec; fdCreator: OSType;
- ; editionFileNameScript: ScriptCode): OSErr;
- MACRO
- _CreateEditionContainerFile
- MOVE.W #$050E,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION DeleteEditionContainerFile(editionFile: FSSpec): OSErr;
- MACRO
- _DeleteEditionContainerFile
- MOVE.W #$0210,D0
- _Pack11
- ENDM
-
-
-
- ; FUNCTION OpenEdition(subscriberSectionH: SectionHandle;
- ; VAR refNum: EditionRefNum): OSErr;
- MACRO
- _OpenEdition
- MOVE.W #$0412,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION OpenNewEdition(publisherSectionH: SectionHandle; fdCreator: OSType;
- ; publisherSectionDocument: FSSpecPtr;
- ; VAR refNum: EditionRefNum): OSErr;
- MACRO
- _OpenNewEdition
- MOVE.W #$0814,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION CloseEdition(whichEdition: EditionRefNum; successful: BOOLEAN): OSErr;
- MACRO
- _CloseEdition
- MOVE.W #$0316,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION EditionHasFormat(whichEdition: EditionRefNum; whichFormat: FormatType;
- ; VAR formatSize: Size): OSErr;
- MACRO
- _EditionHasFormat
- MOVE.W #$0618,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION ReadEdition(whichEdition: EditionRefNum; whichFormat: FormatType;
- ; buffPtr: Ptr; VAR buffLen: Size): OSErr;
- MACRO
- _ReadEdition
- MOVE.W #$081A,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION WriteEdition(whichEdition: EditionRefNum; whichFormat: FormatType;
- ; buffPtr: Ptr; buffLen: Size): OSErr;
- MACRO
- _WriteEdition
- MOVE.W #$081C,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION GetEditionFormatMark(whichEdition: EditionRefNum; whichFormat: FormatType;
- ; VAR currentMark: LONGINT): OSErr;
- MACRO
- _GetEditionFormatMark
- MOVE.W #$061E,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION SetEditionFormatMark(whichEdition: EditionRefNum; whichFormat: FormatType;
- ; setMarkTo: LONGINT): OSErr;
- MACRO
- _SetEditionFormatMark
- MOVE.W #$0620,D0
- _Pack11
- ENDM
-
-
-
- ; FUNCTION GetEditionInfo(sectionH: SectionHandle; VAR editionInfo: EditionInfoRecord): OSErr;
- MACRO
- _GetEditionInfo
- MOVE.W #$0422,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION GoToPublisherSection(container: EditionContainerSpec): OSErr;
- MACRO
- _GoToPublisherSection
- MOVE.W #$0224,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION GetLastEditionContainerUsed(VAR container: EditionContainerSpec): OSErr;
- MACRO
- _GetLastEditionContainerUsed
- MOVE.W #$0226,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION GetStandardFormats(container: EditionContainerSpec; VAR previewFormat: FormatType;
- ; preview, publisherAlias, formats: Handle): OSErr;
- MACRO
- _GetStandardFormats
- MOVE.W #$0A28,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION GetEditionOpenerProc(VAR opener: EditionOpenerProcPtr): OSErr;
- MACRO
- _GetEditionOpenerProc
- MOVE.W #$022A,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION SetEditionOpenerProc(opener: EditionOpenerProcPtr): OSErr;
- MACRO
- _SetEditionOpenerProc
- MOVE.W #$022C,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION CallEditionOpenerProc(selector: EditionOpenerVerb; VAR PB: EditionOpenerParamBlock;
- ; routine: EditionOpenerProcPtr): OSErr;
- MACRO
- _CallEditionOpenerProc
- MOVE.W #$052E,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION CallFormatIOProc(selector: FormatIOVerb; VAR PB: FormatIOParamBlock;
- ; routine: FormatIOProcPtr): OSErr;
- MACRO
- _CallFormatIOProc
- MOVE.W #$0530,D0
- _Pack11
- ENDM
-
-
-
-
- ; FUNCTION NewSubscriberDialog(VAR reply: NewSubscriberReply): OSErr;
- MACRO
- _NewSubscriberDialog
- MOVE.W #$0232,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION NewSubscriberExpDialog(VAR reply: NewSubscriberReply; where: Point;
- ; expansionDITLresID: INTEGER; dlgHook: ExpDlgHookProcPtr;
- ; filterProc: ExpModalFilterProcPtr; yourDataPtr: UNIV Ptr): OSErr;
- MACRO
- _NewSubscriberExpDialog
- MOVE.W #$0B34,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION NewPublisherDialog(VAR reply: NewPublisherReply): OSErr;
- MACRO
- _NewPublisherDialog
- MOVE.W #$0236,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION NewPublisherExpDialog(VAR reply: NewPublisherReply; where: Point;
- ; expansionDITLresID: INTEGER; dlgHook: ExpDlgHookProcPtr;
- ; filterProc: ExpModalFilterProcPtr; yourDataPtr: UNIV Ptr): OSErr;
- MACRO
- _NewPublisherExpDialog
- MOVE.W #$0B38,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION SectionOptionsDialog(VAR reply: SectionOptionsReply): OSErr;
- MACRO
- _SectionOptionsDialog
- MOVE.W #$023A,D0
- _Pack11
- ENDM
-
-
- ; FUNCTION SectionOptionsExpDialog(VAR reply: SectionOptionsReply; where: Point;
- ; expansionDITLresID: INTEGER; dlgHook: ExpDlgHookProcPtr;
- ; filterProc: ExpModalFilterProcPtr; yourDataPtr: UNIV Ptr): OSErr;
- MACRO
- _SectionOptionsExpDialog
- MOVE.W #$0B3C,D0
- _Pack11
- ENDM
-
-
-
- ENDIF ; ...already included